/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package EA_Model.IEC61970.Generation.GenerationDynamics;

import EA_Model.IEC61970.Domain.PU;
import EA_Model.IEC61970.Domain.Seconds;
import EA_Model.IEC61970.Domain.Temperature;

/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>Combustion Turbine</b></em>'.
 * <!-- end-user-doc -->
 *
 * <p>
 * The following features are supported:
 * <ul>
 *   <li>{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getAmbientTemp <em>Ambient Temp</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getAuxPowerVersusFrequency <em>Aux Power Versus Frequency</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getAuxPowerVersusVoltage <em>Aux Power Versus Voltage</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getCapabilityVersusFrequency <em>Capability Versus Frequency</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getHeatRecoveryFlag <em>Heat Recovery Flag</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getPowerVariationByTemp <em>Power Variation By Temp</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getReferenceTemp <em>Reference Temp</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getTimeConstant <em>Time Constant</em>}</li>
 * </ul>
 * </p>
 *
 * @see EA_Model.IEC61970.Generation.GenerationDynamics.GenerationDynamicsPackage#getCombustionTurbine()
 * @model
 * @generated
 */
public interface CombustionTurbine extends PrimeMover {
	/**
	 * Returns the value of the '<em><b>Ambient Temp</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Ambient Temp</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Ambient Temp</em>' reference.
	 * @see #setAmbientTemp(Temperature)
	 * @see EA_Model.IEC61970.Generation.GenerationDynamics.GenerationDynamicsPackage#getCombustionTurbine_AmbientTemp()
	 * @model ordered="false"
	 * @generated
	 */
	Temperature getAmbientTemp();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getAmbientTemp <em>Ambient Temp</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Ambient Temp</em>' reference.
	 * @see #getAmbientTemp()
	 * @generated
	 */
	void setAmbientTemp(Temperature value);

	/**
	 * Returns the value of the '<em><b>Aux Power Versus Frequency</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Aux Power Versus Frequency</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Aux Power Versus Frequency</em>' reference.
	 * @see #setAuxPowerVersusFrequency(PU)
	 * @see EA_Model.IEC61970.Generation.GenerationDynamics.GenerationDynamicsPackage#getCombustionTurbine_AuxPowerVersusFrequency()
	 * @model ordered="false"
	 * @generated
	 */
	PU getAuxPowerVersusFrequency();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getAuxPowerVersusFrequency <em>Aux Power Versus Frequency</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Aux Power Versus Frequency</em>' reference.
	 * @see #getAuxPowerVersusFrequency()
	 * @generated
	 */
	void setAuxPowerVersusFrequency(PU value);

	/**
	 * Returns the value of the '<em><b>Aux Power Versus Voltage</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Aux Power Versus Voltage</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Aux Power Versus Voltage</em>' reference.
	 * @see #setAuxPowerVersusVoltage(PU)
	 * @see EA_Model.IEC61970.Generation.GenerationDynamics.GenerationDynamicsPackage#getCombustionTurbine_AuxPowerVersusVoltage()
	 * @model ordered="false"
	 * @generated
	 */
	PU getAuxPowerVersusVoltage();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getAuxPowerVersusVoltage <em>Aux Power Versus Voltage</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Aux Power Versus Voltage</em>' reference.
	 * @see #getAuxPowerVersusVoltage()
	 * @generated
	 */
	void setAuxPowerVersusVoltage(PU value);

	/**
	 * Returns the value of the '<em><b>Capability Versus Frequency</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Capability Versus Frequency</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Capability Versus Frequency</em>' reference.
	 * @see #setCapabilityVersusFrequency(PU)
	 * @see EA_Model.IEC61970.Generation.GenerationDynamics.GenerationDynamicsPackage#getCombustionTurbine_CapabilityVersusFrequency()
	 * @model ordered="false"
	 * @generated
	 */
	PU getCapabilityVersusFrequency();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getCapabilityVersusFrequency <em>Capability Versus Frequency</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Capability Versus Frequency</em>' reference.
	 * @see #getCapabilityVersusFrequency()
	 * @generated
	 */
	void setCapabilityVersusFrequency(PU value);

	/**
	 * Returns the value of the '<em><b>Heat Recovery Flag</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Heat Recovery Flag</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Heat Recovery Flag</em>' reference.
	 * @see #setHeatRecoveryFlag(EA_Model.IEC61970.Domain.Boolean)
	 * @see EA_Model.IEC61970.Generation.GenerationDynamics.GenerationDynamicsPackage#getCombustionTurbine_HeatRecoveryFlag()
	 * @model ordered="false"
	 * @generated
	 */
	EA_Model.IEC61970.Domain.Boolean getHeatRecoveryFlag();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getHeatRecoveryFlag <em>Heat Recovery Flag</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Heat Recovery Flag</em>' reference.
	 * @see #getHeatRecoveryFlag()
	 * @generated
	 */
	void setHeatRecoveryFlag(EA_Model.IEC61970.Domain.Boolean value);

	/**
	 * Returns the value of the '<em><b>Power Variation By Temp</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Power Variation By Temp</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Power Variation By Temp</em>' reference.
	 * @see #setPowerVariationByTemp(PU)
	 * @see EA_Model.IEC61970.Generation.GenerationDynamics.GenerationDynamicsPackage#getCombustionTurbine_PowerVariationByTemp()
	 * @model ordered="false"
	 * @generated
	 */
	PU getPowerVariationByTemp();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getPowerVariationByTemp <em>Power Variation By Temp</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Power Variation By Temp</em>' reference.
	 * @see #getPowerVariationByTemp()
	 * @generated
	 */
	void setPowerVariationByTemp(PU value);

	/**
	 * Returns the value of the '<em><b>Reference Temp</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Reference Temp</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Reference Temp</em>' reference.
	 * @see #setReferenceTemp(Temperature)
	 * @see EA_Model.IEC61970.Generation.GenerationDynamics.GenerationDynamicsPackage#getCombustionTurbine_ReferenceTemp()
	 * @model ordered="false"
	 * @generated
	 */
	Temperature getReferenceTemp();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getReferenceTemp <em>Reference Temp</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Reference Temp</em>' reference.
	 * @see #getReferenceTemp()
	 * @generated
	 */
	void setReferenceTemp(Temperature value);

	/**
	 * Returns the value of the '<em><b>Time Constant</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Time Constant</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Time Constant</em>' reference.
	 * @see #setTimeConstant(Seconds)
	 * @see EA_Model.IEC61970.Generation.GenerationDynamics.GenerationDynamicsPackage#getCombustionTurbine_TimeConstant()
	 * @model ordered="false"
	 * @generated
	 */
	Seconds getTimeConstant();

	/**
	 * Sets the value of the '{@link EA_Model.IEC61970.Generation.GenerationDynamics.CombustionTurbine#getTimeConstant <em>Time Constant</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Time Constant</em>' reference.
	 * @see #getTimeConstant()
	 * @generated
	 */
	void setTimeConstant(Seconds value);

} // CombustionTurbine
